Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat : toInt_shiftLeft theorem #37

Draft
wants to merge 13 commits into
base: master
Choose a base branch
from
Draft

feat : toInt_shiftLeft theorem #37

wants to merge 13 commits into from

Conversation

mhk119
Copy link
Collaborator

@mhk119 mhk119 commented Dec 8, 2024

No description provided.

kim-em and others added 6 commits December 6, 2024 01:45
This PR adds `GetElem` lemmas for the basic `Vector` operations.

The `Vector` API is still very sparse, but I'm hoping to infill rapidly.
This PR removes unnecessary parameters from the funcion induction
principles. This is a breaking change; broken code can typically be adjusted
simply by passing fewer parameters.

Part 1, before stage0 update.

Closes leanprover#6320
This PR removes unnecessary parameters from the funcion induction
principles. This is a breaking change; broken code can typically be adjusted
simply by passing fewer parameters.

Part 2, adjusting after stage0 update.

Closes leanprover#6320
This PR adds missing `(types := true)` to `#reduce` example in [Readers
example](https://lean-lang.org/lean4/doc/monads/readers.lean.html).
Since [4.10](https://lean-lang.org/blog/2024-8-1-lean-4100/) the `(types
:= true)` is necessary for the `ReaderM Environment String` type to be
reduced into `Environment → String`.
…rover#6322)

This PR removes the deprecated aliases `Int.div := Int.tdiv` and
`Int.mod := Int.tmod`. Later we will rename `Int.ediv` to `Int.div` and
`Int.emod` to `Int.mod`.
@mhk119 mhk119 requested a review from kim-em as a code owner December 8, 2024 06:45
@mhk119 mhk119 marked this pull request as draft December 8, 2024 06:45
Copy link

@tobiasgrosser tobiasgrosser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice. This seems self-contained. You can probably mention that this completes the toInt/Nat/Fin family for shiftLeft.

Might be worth to PR to lean proper.

kim-em and others added 5 commits December 8, 2024 22:03
This PRs continues cleaning up Array lemmas and improving alignment with
List.
This PR lets `_` be used in numeric literals as a separator. For
example, `1_000_000`, `0xff_ff` or `0b_10_11_01_00`. New lexical syntax:
```text
numeral10 : [0-9]+ ("_"+ [0-9]+)*
numeral2  : "0" [bB] ("_"* [0-1]+)+
numeral8  : "0" [oO] ("_"* [0-7]+)+
numeral16 : "0" [xX] ("_"* hex_char+)+
float     : numeral10 "." numeral10? [eE[+-]numeral10]
```

Closes leanprover#6199
Further alignment of `Array` and `List` lemmas. Moved lemmas about
`List.toArray` to a separate file, and aligned lemmas about membership.
Continuing cleanup of Array lemmas.
@mhk119 mhk119 force-pushed the toInt_shiftLeft branch 2 times, most recently from 01199ca to fe481dc Compare December 9, 2024 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants